System and method for signature-enhanced multimedia content searching

ABSTRACT

A method for signature-enhanced multimedia content searching. The method includes searching through a plurality of input multimedia content elements by comparing a query to at least one tag assigned to each input multimedia content element, wherein at least one of the at least one tag assigned to each input multimedia content element is assigned based on at least one signature generated for the input multimedia content element, wherein each signature represents a concept, wherein each concept is a collection of signatures and metadata representing the concept.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No.62/347,160 filed on Jun. 8, 2016. This application is also acontinuation-in-part (CIP) of U.S. patent application Ser. No.14/050,991 filed on Oct. 10, 2013, now pending, which claims the benefitof U.S. Provisional Application No. 61/860,261 filed on Jul. 31, 2013.The 14/050,991 application is also a CIP of U.S. patent application Ser.No. 13/602,858 filed Sep. 4, 2012, now U.S. Pat. No. 8,868,619, which isa continuation of U.S. patent application Ser. No. 12/603,123, filed onOct. 21, 2009, now U.S. Pat. No. 8,266,185. The 12/603,123 applicationis a CIP of:

(1) U.S. patent application Ser. No. 12/084,150 having a filing date ofApr. 7, 2009, now U.S. Pat. No. 8,655,801, which is the National Stageof International application Ser. No. PCT/IL2006/001235, filed on Oct.26, 2006, which claims foreign priority from Israeli Application No.171577 filed on Oct. 26, 2005, and Israeli Application No. 173409 filedon Jan. 29, 2006;

(2) U.S. patent application Ser. No. 12/195,863 filed on Aug. 21, 2008,now U.S. Pat. No. 8,326,775, which claims priority under 35 USC 119 fromIsraeli Application No. 185414, filed on Aug. 21, 2007, and which isalso a CIP of the above-referenced U.S. patent application Ser. No.12/084,150;

(3) U.S. patent application Ser. No. 12/348,888 filed on Jan. 5, 2009,now pending, which is a CIP of the above-referenced U.S. patentapplication Nos. 12/084,150 and 12/195,863; and

(4) U.S. patent application Ser. No. 12/538,495 filed on Aug. 10, 2009,now U.S. Pat. No. 8,312,031, which is a CIP of the above-referenced U.S.patent application Nos. 12/084,150; 12/195,863; and 12/348,888.

All of the applications referenced above are herein incorporated byreference for all that they contain.

TECHNICAL FIELD

The present disclosure relates generally to the analysis of multimediacontent, and more specifically to enhancing a user's search experiencebased on analysis of multimedia content.

BACKGROUND

Search engines are used for searching for information over the WorldWide Web. Search engines are also utilized to search locally over theuser device. A search query refers to a query that a user enters intosuch a search engine in order to receive search results. The searchquery may be in a form of a textual query, an image, or an audio query.

Searching for multimedia content elements (e.g., picture, video clips,audio clips, etc.) stored locally on the user device as well as on theweb may not be an easy task. According to the prior art solutions,respective of an input query a search is performed through the metadataof the available multimedia content elements. The metadata is typicallyassociated with a multimedia content element and includes parameters,such as the element's size, type, name, and short description, and soon. The description and name of the element are typically provided bythe creator of the element and by a person saving or placing the elementin a local device and/or a website. Therefore, metadata of an element,in most cases, is not sufficiently descriptive of the multimediaelement. For example, a user may save a picture of a cat under the filename of “weekend fun”, thus the metadata would not be descriptive of thecontents of the picture.

As a result, searching for multimedia content elements based solely ontheir metadata may not provide the most accurate results. Following theabove example, the input query ‘cat’ would not return the picture savedunder “weekend fun”. In computer science, a tag is a non-hierarchicalkeyword or term assigned to a piece of information, such as multimediacontent elements.

Tagging has gained wide popularity due to the growth of socialnetworking, photograph sharing, and bookmarking of websites. Somewebsites allow users to create and manage tags that categorize contentusing simple keywords. The users of such sites manually add and definethe description of the tags. However, some websites limit the taggingoptions of multimedia elements, for example, by only allowing tagging ofpeople shown in a picture. Thus, existing solutions for tagging oftenresult in inaccurate or incomplete tags which, consequently, leads tomany inappropriate search results or missed appropriate search results.

It would be therefore advantageous to provide a solution that overcomesthe deficiencies of the prior art.

SUMMARY

A summary of several example embodiments of the disclosure follows. Thissummary is provided for the convenience of the reader to provide a basicunderstanding of such embodiments and does not wholly define the breadthof the disclosure. This summary is not an extensive overview of allcontemplated embodiments, and is intended to neither identify key orcritical elements of all embodiments nor to delineate the scope of anyor all aspects. Its sole purpose is to present some concepts of one ormore embodiments in a simplified form as a prelude to the more detaileddescription that is presented later. For convenience, the term “someembodiments” or “certain embodiments” may be used herein to refer to asingle embodiment or multiple embodiments of the disclosure.

Certain embodiments disclosed herein include a method forsignature-enhanced multimedia content searching. The method comprises:searching through a plurality of input multimedia content elements bycomparing a query to at least one tag assigned to each input multimediacontent element, wherein at least one of the at least one tag assignedto each input multimedia content element is assigned based on at leastone signature generated for the input multimedia content element,wherein each signature represents a concept, wherein each concept is acollection of signatures and metadata representing the concept.

Certain embodiments disclosed herein also include a non-transitorycomputer readable medium having stored thereon causing a processingcircuitry to execute a process, the process comprising: searchingthrough a plurality of input multimedia content elements by comparing aquery to at least one tag assigned to each input multimedia contentelement, wherein at least one of the at least one tag assigned to eachinput multimedia content element is assigned based on at least onesignature generated for the input multimedia content element, whereineach signature represents a concept, wherein each concept is acollection of signatures and metadata representing the concept.

Certain embodiments disclosed herein also include a system forsignature-enhanced multimedia content searching. The system comprises: aprocessing circuitry; and a memory, the memory containing instructionsthat, when executed by the processing circuitry, configure the systemto: search through a plurality of input multimedia content elements bycomparing a query to at least one tag assigned to each input multimediacontent element, wherein at least one of the at least one tag assignedto each input multimedia content element is assigned based on at leastone signature generated for the input multimedia content element,wherein each signature represents a concept, wherein each concept is acollection of signatures and metadata representing the concept.

BRIEF DESCRIPTION OF THE DRAWINGS

The subject matter disclosed herein is particularly pointed out anddistinctly claimed in the claims at the conclusion of the specification.The foregoing and other objects, features, and advantages of thedisclosed embodiments will be apparent from the following detaileddescription taken in conjunction with the accompanying drawings.

FIG. 1 is a schematic block diagram of a network system utilized todescribe the various embodiments disclosed herein.

FIG. 2 is a flowchart illustrating a method for tagging multimediacontent elements according to an embodiment.

FIG. 3 is a flowchart illustrating a method for signature-enhancedmultimedia content searching according to an embodiment.

FIG. 4 is a block diagram depicting the basic flow of information in thesignature generator system.

FIG. 5 is a diagram showing the flow of patches generation, responsevector generation, and signature generation in a large-scalespeech-to-text system.

FIG. 6 is a schematic diagram of a multimedia content finder accordingto an embodiment.

DETAILED DESCRIPTION

It is important to note that the embodiments disclosed herein are onlyexamples of the many advantageous uses of the innovative teachingsherein. In general, statements made in the specification of the presentapplication do not necessarily limit any of the various claimedembodiments. Moreover, some statements may apply to some disclosedfeatures but not to others. In general, unless otherwise indicated,singular elements may be in plural and vice versa with no loss ofgenerality. In the drawings, like numerals refer to like parts throughseveral views.

The various disclosed embodiments include a system and a method forsignature-enhanced multimedia content searching. At least a portion of aquery is received. At least one tag may be assigned to at least one of aplurality of input multimedia content elements based on the signatures.The plurality of input multimedia content elements is searched bycomparing the query to tags generated for the plurality of inputmultimedia content elements. At least one matching input multimediacontent element found during the search may be provided as searchresults.

In an embodiment, assigning the tags includes generating at least onesignature for each of the at least one of the plurality of inputmultimedia content elements and matching the generated signatures to aplurality of signatures of reference multimedia content elementsassociated with predetermined tags. Each tag associated with a referencemultimedia content element matching an input multimedia content elementas determined based on the signature matching may be assigned to theinput multimedia content element.

FIG. 1 shows an example network diagram 100 utilized to describe thevarious disclosed embodiments. The network diagram includes a userdevice 120, a multimedia content (MMC) finder 130, a database 150, adeep content classification (DCC) system 160, and a plurality of datasources 170-1 through 170-m (hereinafter referred to individually as adata source 170 and collectively as data sources 170, merely forsimplicity purposes). The network 110 may be the Internet, theworld-wide-web (WWW), a local area network (LAN), a wide area network(WAN), a metro area network (MAN), and other networks capable ofenabling communication between the elements of the network diagram 100.

The user device 120 may be, but is not limited to, a personal computer(PC), a personal digital assistant (PDA), a mobile phone, a smart phone,a tablet computer, an electronic wearable device (e.g., glasses, awatch, etc.), and other kinds of wired and mobile appliances, equippedwith browsing, viewing, capturing, storing, listening, filtering, andmanaging capabilities enabled as further discussed herein below. Theuser device 120 may include or be communicatively connected to a localstorage (not shown) storing multimedia content elements. As anon-limiting example, when the user device 120 is a smart phoneincluding a camera, the local storage may store images and videoscaptured by the camera.

A multimedia content element may include, for example, an image, agraphic, a video stream, a video clip, an audio stream, an audio clip, avideo frame, a photograph, and an image of signals (e.g., spectrograms,phasograms, scalograms, etc.), a combination thereof, or a portionthereof.

The user device 120 may further include an application (App) 125installed thereon. The application 125 may be downloaded from anapplication repository, such as the AppStore®, Google Play®, or anyrepositories hosting software applications. The application 125 may bepre-installed in the user device 120. In an embodiment, the application125 may be a web-browser. The application 125 may be configured toreceive queries via an interface (not shown) of the user device 120 andto send the received queries to the multimedia content finder 130. Itshould be noted that only one user device 120 and one application 125are discussed with reference to FIG. 1 merely for the sake ofsimplicity. However, the embodiments disclosed herein are applicable toa plurality of user devices each having an application installedthereon.

The database 150 stores at least reference multimedia content elements,tags associated with the reference multimedia content elements, and soon. In the example network diagram 100, the multimedia content finder130 communicatively communicates with the database 150 through thenetwork 110. In other non-limiting configurations, the multimediacontent finder 130 may be directly connected to the database 150.

Each of the data sources 170 may store multimedia content elements thatmay be searched. To this end, the data sources 170 may include, but arenot limited to, servers or data repositories of entities such as, forexample, social media platforms, remote storage providers (e.g., cloudstorage service providers), and any other entities storing multimediacontent elements.

The signature generator system (SGS) 140 and the deep-contentclassification (DCC) system 160 may be utilized by the multimediacontent finder 130 to perform the various disclosed embodiments. Each ofthe SGS 140 and the DCC system 160 may be connected to the multimediacontent finder 130 directly or through the network 110. In certainconfigurations, the DCC system 160 and the SGS 140 may be embedded inthe multimedia content finder 130.

In an embodiment, the multimedia content finder 130 is configured toreceive a query and to search for relevant multimedia content elementsbased on the query. The searching may be among input multimedia contentelements stored in, e.g., the user device 120 (e.g., based on multimediacontent elements stored in a local storage of the user device 120), oneor more of the data sources 170, or both. In a further embodiment, themultimedia content finder 130 is configured to search for the relevantmultimedia content elements by comparing text of the query to text oftags created for the input multimedia content elements. In yet a furtherembodiment, each tag is created based on signatures of the respectiveinput multimedia content element and of a plurality of referencemultimedia content elements.

The tags may include previously created tags of each input multimediacontent element. Alternatively or collectively, the multimedia contentfinder 130 may be configured to create tags for at least one of theinput multimedia content elements when a query is received. In anexample implementation, the multimedia content finder 130 may beconfigured to create tags only for input multimedia content elementsthat are not associated with at least one tag.

In an embodiment, the multimedia content finder 130 is configured tosend the input multimedia content elements to the signature generatorsystem 140, to the deep content classification system 160, or both. In afurther embodiment, the multimedia content finder 130 is configured toreceive a plurality of signatures generated to the multimedia contentelement from the signature generator system 140, to receive a pluralityof signatures (e.g., signature reduced clusters) of concepts matched tothe multimedia content element from the deep content classificationsystem 160, or both. In another embodiment, the multimedia contentfinder 130 may be configured to generate the plurality of signatures,identify the plurality of signatures (e.g., by determining conceptsassociated with the signature reduced clusters matching each inputmultimedia content element), or a combination thereof.

In an embodiment, creating the tags for an input multimedia contentelement includes causing generation of at least one signature for theinput multimedia content element and comparing the generated at leastone signature to a plurality of signatures generated for referencemultimedia content elements stored in, e.g., the database 150. Eachreference multimedia content element is associated with at least onepredetermined tag such that tags of the reference multimedia contentelement are likely to be appropriate for each matching input multimediacontent element. In an embodiment, an input multimedia content elementand a reference multimedia content element may be matching if signaturesgenerated for the input multimedia content element match signatures ofthe reference multimedia content element above a predeterminedthreshold. The process of matching between signatures of multimediacontent elements is discussed in detail below with respect to FIGS. 4and 5.

Each signature represents a concept structure (hereinafter referred toas a “concept”). A concept is a collection of signatures representingelements of the unstructured data and metadata describing the concept.As a non-limiting example, a ‘Superman concept’ is a signature-reducedcluster of signatures describing elements (such as multimedia elements)related to, e.g., a Superman cartoon: a set of metadata representingproving textual representation of the Superman concept. Techniques forgenerating concept structures are also described in the above-referenced U.S. Pat. No. 8,266,185.

In another embodiment, the multimedia content finder 130 is configuredto create the tags by sending the input multimedia content elements tothe DCC system 160 to match each input multimedia content element to atleast one concept structure. If such a match is found, then the metadataof the concept structure may be used to generate a tag to be assignedthe input multimedia content element. The identification of a conceptmatching the received multimedia content element includes matching atleast one signature generated for the received element (suchsignature(s) may be produced either by the SGS 140 or the DCC system160) and comparing the element's signatures to signatures representing aconcept structure. The matching can be performed across all conceptstructures maintained by the system DCC 160.

It should be noted that, if the DCC system 160 returns multiple conceptstructures, a correlation for matching concept structures may beperformed to generate a tag that best describes the element. Thecorrelation can be achieved by identifying a ratio between signatures'sizes, a spatial location of each signature, and using the probabilisticmodels.

It should further be noted that using signatures generated formultimedia content elements enable accurate tagging of the elements,because the signatures generated for the multimedia content elements,according to the disclosed embodiments, allow for recognition andclassification of multimedia content.

FIG. 2 depicts an example flowchart 200 describing a method for taggingmultimedia content elements according to an embodiment.

At S210, at least one input multimedia content element is received.Alternatively or collectively, the at least one input multimedia contentelement may be retrieved from, e.g., a user device, one or more datasources, both, and the like.

At S220, at least one signature is generated for one of the inputmultimedia content elements. The signature(s) are generated by asignature generator system (e.g., the SGS 140) as described below withrespect to FIGS. 4 and 5.

At S230, at least one tag is assigned to the input multimedia contentelement based on the generated signatures. In an embodiment, S230includes searching for at least one matching reference multimediacontent element and assigning at least one tag of the matching referencemultimedia content element to the input multimedia content elementcontent element. Two signatures are determined to be matching if theirrespective signatures at least partially match (e.g., above apredetermined threshold). In another embodiment, S230 includes queryinga DCC system with the generated signature or the input multimediacontent element to identify at least one matching concept structure. Themetadata of the matching concept structure is used to tag the receivedmultimedia element.

At optional S240, the input multimedia content element and itsrespective at least one tag may be stored.

At S250, it is checked whether additional input multimedia contentelements are to be tagged and, if so, execution continues with S220,where a new input multimedia content element is tagged; otherwise,execution terminates.

FIG. 3 depicts an example flowchart 300 illustrating a method forsignature-enhanced multimedia content searching according to anembodiment. In an embodiment, the method may be performed by themultimedia content finder 130, FIG. 1.

At S310, a query or a portion thereof is received. The query includestext representing, e.g., a search intent of a user.

In an embodiment, S310 may further include supplementing the receivedquery using one or more supplementing rules. The supplementing rules maydefine terms to be added, removed, or modified, in received queries. Thesupplementing rules may include general rules (i.e., rules that applyregardless of user), rules that are specific to particular users, orboth. As a non-limiting example, the supplementing rules may includerules for changing the term “me” included in a query to any of“selfies,” “images showing me,” “profile images,” and the like. Asanother non-limiting example, the supplementing rules may include rulesfor changing the term “me” to a name of the user.

At optional S320, at least one tag may be assigned to each of at leastone input multimedia content element. The input multimedia contentelements may include, but are not limited to, multimedia contentelements stored in a user device, one or more data sources, both, andthe like, for example as described further herein above with respect toFIG. 1.

In an embodiment, S320 may include generating a signature for each inputmultimedia content element to be tagged and comparing the inputmultimedia content element signatures to a plurality of signatures ofreference multimedia content elements associated with predeterminedtags. In a further embodiment, S230 further includes assigning, to eachinput multimedia content element, tags associated with at least onematching reference multimedia content element having signatures matchingthe signatures of the input multimedia content element above apredetermined threshold.

In another embodiment, S320 may include sending the input multimediacontent elements to be tagged or signatures therefore to a DCC systemand receiving, from the DCC system, at least one concept matching eachinput multimedia content element. In a further embodiment, the assignedtags may be created based on metadata of the matching concepts.

Assigning tags to multimedia content elements based on signatures isdescribed further herein above with respect to FIG. 2.

In an embodiment, tags may be assigned to input multimedia contentelements that are currently lacking tags or lacking tags assigned basedon signatures. As a non-limiting example, if a video was recentlyuploaded to a social media website, the video may lack tags or may onlyhave tags assigned manually rather than based on signatures. Assigningtags only to input multimedia content elements lacking tags allows forconserving computing resources when one or more of the input multimediacontent elements has, e.g., already been accurately tagged.

At S330, the input multimedia content elements are searched using thereceived query with respect to the assigned tags of each inputmultimedia content element. As noted above, each searched inputmultimedia content element is associated with at least one tag assignedbased on signature matching to at least one reference multimedia contentelement.

At S340, it is determined whether at least one search result multimediacontent element was found during the search and, if so, executioncontinues with S350; otherwise, execution continues with S360.

In an embodiment, each search result multimedia content element is aninput multimedia content element associated with at least one tagmatching the query above a predetermined threshold. In some embodiments,a limited number (e.g., 1, 5, 10, etc.) of input multimedia contentelements may be found. In a further embodiment, the search resultmultimedia content elements may include one or more best matching inputmultimedia content elements as determined by comparing the query to thetags of each input multimedia content element.

At S350 the search result multimedia content elements may be provided,e.g., to a user device from which the query was received. In anembodiment, S350 may include sending the search result multimediacontent elements, a notification identifying the search resultmultimedia content elements, or both.

At optional S360, a notification indicating that no search resultmultimedia content elements were found may be generated and sent, e.g.,to a user device from which the query was received.

At S370, it is determined if additional queries have been received and,if so, execution continues with S310; otherwise, execution terminates.Additional queries may be processed in order to, e.g., handle queriesfrom a plurality of users, handle revised queries from a user as theuser changes the queries, and the like.

As a non-limiting example, a query of “me and Lucky” is received from auser device utilized by a user “John Smith.” Based on supplementingrules, the received query is modified to be “image of John Smith and mydog.” Tags for images stored in the user device are assigned based onsignatures generated for the images. One of the stored images featuresJohn Smith and a dog and, consequently, signatures generated for theimage represent at least the concepts of “dog” and “John Smith.” Thesignatures of the images are compared to signatures of a plurality ofreference images, and a reference image showing John Smith and a dog isdetermined to be matching. Accordingly, tags of “John Smith” and “dog”are assigned to the respective reference image. The modified query iscompared to tags of each of the reference images, and it is determinedthat the tags of the reference image showing John Smith and a dog matchthe query above a predetermined threshold. Accordingly, the referenceimage of John Smith and a dog is determined as a search result, and maybe sent to the user device.

It should be noted that the steps of FIG. 3 are described in aparticular order merely for example purposes and without limitation onthe disclosed embodiments. Other orders may be equally utilized withoutdeparting from the scope of the disclosure. In particular, assigning thetags to input multimedia content elements is described as occurringafter receiving the query merely as an example. The tags may be equallyassigned prior to or at the same time as receiving queries (e.g., atpredetermined time intervals, as new input multimedia content elementsare uploaded or otherwise stored, etc.) without departing from the scopeof the disclosed embodiments.

It should be further noted that handling of multiple queries asdescribed in FIG. 3 is discussed with respect to handling queries inseries merely for simplicity purposes and without limitation on thedisclosed embodiments. Queries may be handled in parallel withoutdeparting from the scope of the disclosure.

FIGS. 4 and 5 illustrate the generation of signatures for the multimediacontent elements by the SGS 140 according to one embodiment. Anexemplary high-level description of the process for large scale matchingis depicted in FIG. 4. In this example, the matching is for a videocontent.

Video content segments 2 from a Master database (DB) 6 and a Target DB 1are processed in parallel by a large number of independent computationalCores 3 that constitute an architecture for generating the Signatures(hereinafter the “Architecture”). Further details on the computationalCores generation are provided below. The independent Cores 3 generate adatabase of Robust Signatures and Signatures 4 for Targetcontent-segments 5 and a database of Robust Signatures and Signatures 7for Master content-segments 8. An exemplary and non-limiting process ofsignature generation for an audio component is shown in detail in FIG.4. Finally, Target Robust Signatures and/or Signatures are effectivelymatched, by a matching algorithm 9, to Master Robust Signatures and/orSignatures database to find all matches between the two databases.

To demonstrate an example of the signature generation process, it isassumed, merely for the sake of simplicity and without limitation on thegenerality of the disclosed embodiments, that the signatures are basedon a single frame, leading to certain simplification of thecomputational cores generation. The Matching System is extensible forsignatures generation capturing the dynamics in-between the frames. Inan embodiment, the SGS 140 is configured with a plurality ofcomputational cores to perform matching between signatures.

The Signatures' generation process is now described with reference toFIG. 5. The first step in the process of signatures generation from agiven speech-segment is to breakdown the speech-segment to K patches 14of random length P and random position within the speech segment 12. Thebreakdown is performed by the patch generator component 21. The value ofthe number of patches K, random length P and random position parametersis determined based on optimization, considering the tradeoff betweenaccuracy rate and the number of fast matches required in the flowprocess of the multimedia content finder 130 and SGS 140. Thereafter,all the K patches are injected in parallel into all computational Cores3 to generate K response vectors 22, which are fed into a signaturegenerator system 23 to produce a database of Robust Signatures andSignatures 4.

In order to generate Robust Signatures, i.e., Signatures that are robustto additive noise L (where L is an integer equal to or greater than 1)by the Computational Cores 3 a frame I is injected into all the Cores 3.Then, Cores 3 generate two binary response vectors: {right arrow over(S)} which is a Signature vector, and {right arrow over (RS)} which is aRobust Signature vector.

For generation of signatures robust to additive noise, such asWhite-Gaussian-Noise, scratch, etc., but not robust to distortions, suchas crop, shift and rotation, etc., a core Ci={n_(i)i} (1≦i≦L) mayconsist of a single leaky integrate-to-threshold unit (LTU) node or morenodes. The node n_(i) equations are:

$V_{i} = {\sum\limits_{j}\; {w_{ij}k_{j}}}$ ni = θ(Vi − Th_(x))

where, θ is a Heaviside step function; w_(ij) is a coupling node unit(CNU) between node i and image component j (for example, grayscale valueof a certain pixel j); kj is an image component ‘j’ (for example,grayscale value of a certain pixel j); Th_(x) is a constant Thresholdvalue, where ‘x’ is ‘S’ for Signature and ‘RS’ for Robust Signature; andVi is a Coupling Node Value.

The Threshold values Thx are set differently for Signature generationand for Robust Signature generation. For example, for a certaindistribution of Vi values (for the set of nodes), the thresholds forSignature (Th_(S)) and Robust Signature (Th_(RS)) are set apart, afteroptimization, according to at least one or more of the followingcriteria:

1: For: v_(i)>Th_(RS)

1−p(V>Th _(S))−1−(1−ε)^(l)<<1

i.e., given that l nodes (cores) constitute a Robust Signature of acertain image I, the probability that not all of these I nodes willbelong to the Signature of same, but noisy image, Ĩ is sufficiently low(according to a system's specified accuracy).

2: p(V _(i) >Th _(RS))≈l/L

i.e., approximately l out of the total L nodes can be found to generatea Robust Signature according to the above definition.

3: Both Robust Signature and Signature are generated for certain framei.

It should be understood that the generation of a signature isunidirectional, and typically yields lossless compression, where thecharacteristics of the compressed data are maintained but theuncompressed data cannot be reconstructed. Therefore, a signature can beused for the purpose of comparison to another signature without the needof comparison to the original data. The detailed description of theSignature generation can be found in U.S. Pat. Nos. 8,326,775 and8,312,031, assigned to common assignee, which are hereby incorporated byreference for all the useful information they contain.

A Computational Core generation is a process of definition, selection,and tuning of the parameters of the cores for a certain realization in aspecific system and application. The process is based on several designconsiderations, such as:

(a) The Cores should be designed so as to obtain maximal independence,i.e., the projection from a signal space should generate a maximalpair-wise distance between any two cores' projections into ahigh-dimensional space.

(b) The Cores should be optimally designed for the type of signals,i.e., the Cores should be maximally sensitive to the spatio-temporalstructure of the injected signal, for example, and in particular,sensitive to local correlations in time and space. Thus, in some cases acore represents a dynamic system, such as in state space, phase space,edge of chaos, etc., which is uniquely used herein to exploit theirmaximal computational power.

(c) The Cores should be optimally designed with regard to invariance toa set of signal distortions, of interest in relevant applications.

A detailed description of the Computational Core generation and theprocess for configuring such cores is discussed in more detail in theabove-referenced U.S. Pat. No. 8,655,801.

FIG. 6 is an example schematic diagram of the multimedia content finder130 according to an embodiment. The multimedia content finder 130includes a processing circuitry 610 coupled to a memory 620, a storage630, and a network interface 640. In an embodiment, the components ofthe multimedia content finder 130 may be communicatively connected via abus 650.

The processing circuitry 610 may be realized as one or more hardwarelogic components and circuits. For example, and without limitation,illustrative types of hardware logic components that can be used includefield programmable gate arrays (FPGAs), application-specific integratedcircuits (ASICs), Application-specific standard products (ASSPs),system-on-a-chip systems (SOCs), general-purpose microprocessors,microcontrollers, digital signal processors (DSPs), and the like, or anyother hardware logic components that can perform calculations or othermanipulations of information. In an embodiment, the processing circuitry610 may be realized as an array of at least partially statisticallyindependent computational cores. The properties of each computationalcore are set independently of those of each other core, as describedfurther herein above.

The memory 620 may be volatile (e.g., RAM, etc.), non-volatile (e.g.,ROM, flash memory, etc.), or a combination thereof. In oneconfiguration, computer readable instructions to implement one or moreembodiments disclosed herein may be stored in the storage 630.

In another embodiment, the memory 620 is configured to store software.Software shall be construed broadly to mean any type of instructions,whether referred to as software, firmware, middleware, microcode,hardware description language, or otherwise. Instructions may includecode (e.g., in source code format, binary code format, executable codeformat, or any other suitable format of code). The instructions, whenexecuted by the processing circuitry 610, cause the processing circuitry610 to perform the various processes described herein. Specifically, theinstructions, when executed, cause the processing circuitry 610 toprovide recommendations of trending content based on context asdescribed herein.

The storage 630 may be magnetic storage, optical storage, and the like,and may be realized, for example, as flash memory or other memorytechnology, CD-ROM, Digital Versatile Disks (DVDs), or any other mediumwhich can be used to store the desired information.

The network interface 640 allows the multimedia content finder 130 tocommunicate with the signature generator system 140 for the purpose of,for example, sending multimedia content elements, receiving signatures,and the like. Further, the network interface 640 allows the multimediacontent finder 130 to receive queries, send search results, store tagsand associated multimedia content elements or signatures, and the like.

It should be understood that the embodiments described herein are notlimited to the specific architecture illustrated in FIG. 6, and otherarchitectures may be equally used without departing from the scope ofthe disclosed embodiments. In particular, the multimedia content finder130 may further include a signature generator system configured togenerate signatures, a tag generator configure to generate tags formultimedia content elements based on signatures, or both, as describedherein, without departing from the scope of the disclosed embodiments.

The various embodiments disclosed herein can be implemented as hardware,firmware, software, or any combination thereof. Moreover, the softwareis preferably implemented as an application program tangibly embodied ona program storage unit or computer readable medium consisting of parts,or of certain devices and/or a combination of devices. The applicationprogram may be uploaded to, and executed by, a machine comprising anysuitable architecture. Preferably, the machine is implemented on acomputer platform having hardware such as one or more central processingunits (“CPUs”), a memory, and input/output interfaces. The computerplatform may also include an operating system and microinstruction code.The various processes and functions described herein may be either partof the microinstruction code or part of the application program, or anycombination thereof, which may be executed by a CPU, whether or not sucha computer or processor is explicitly shown. In addition, various otherperipheral units may be connected to the computer platform such as anadditional data storage unit and a printing unit. Furthermore, anon-transitory computer readable medium is any computer readable mediumexcept for a transitory propagating signal.

All examples and conditional language recited herein are intended forpedagogical purposes to aid the reader in understanding the disclosedembodiments and the concepts contributed by the inventor to furtheringthe art, and are to be construed as being without limitation to suchspecifically recited examples and conditions. Moreover, all statementsherein reciting principles, aspects, and embodiments of the invention,as well as specific examples thereof, are intended to encompass bothstructural and functional equivalents thereof. Additionally, it isintended that such equivalents include both currently known equivalentsas well as equivalents developed in the future, i.e., any elementsdeveloped that perform the same function, regardless of structure.

What is claimed is:
 1. A method for signature-enhanced multimediacontent searching, comprising: searching through a plurality of inputmultimedia content elements by comparing a query to at least one tagassigned to each input multimedia content element, wherein at least oneof the at least one tag assigned to each input multimedia contentelement is assigned based on at least one signature generated for theinput multimedia content element, wherein each signature represents aconcept, wherein each concept is a collection of signatures and metadatarepresenting the concept.
 2. The method of claim 1, further comprising:assigning the at least one tag to at least one of the at least one inputmultimedia content element.
 3. The method of claim 2, wherein assigningthe at least one tag to one of the at least one input multimedia contentelement further comprises: generating at least one signature for theinput multimedia content element; and comparing the generated at leastone signature to a plurality of signatures of a plurality of referencemultimedia content elements to determine at least one matching referencemultimedia content element, wherein each reference multimedia contentelement is associated with at least one predetermined tag, wherein theat least one tag assigned to each input multimedia content elementincludes the at least one predetermined tag of each matching referencemultimedia content element.
 4. The method of claim 3, wherein thesignatures of each matching reference multimedia content element matchthe at least one signature generated for the input multimedia contentelement above a predetermined threshold.
 5. The method of claim 2,wherein assigning the at least one tag to one of the at least one inputmultimedia content element further comprises: sending, to a deep contentclassification system, at least one of: the input multimedia contentelement, and the at least one signature generated for the inputmultimedia content element; receiving, from the deep conceptclassification system, at least one concept matching the inputmultimedia content element; and creating at least one tag for the inputmultimedia content element, wherein the created at least one tagincludes the metadata representing the matching at least one concept,wherein the created at least one tag is assigned to the input multimediacontent element.
 6. The method of claim 1, further comprising:determining, based on the comparison, at least one search resultmultimedia content element, wherein each search result multimediacontent element is one of the at least one input multimedia contentelement having at least one tag matching the query above a predeterminedthreshold.
 7. The method of claim 6, further comprising: sending the atleast one search result multimedia content element to a user device. 8.The method of claim 1, wherein each input multimedia content element isat least one of: an image, graphics, a video stream, a video clip, anaudio stream, an audio clip, a video frame, a photograph, images ofsignals, and a portion thereof.
 9. The method of claim 1, wherein eachsignature is generated by a signature generator system, wherein thesignature generator system includes a plurality of at least partiallystatistically independent computational cores, wherein the properties ofeach core are set independently of the properties of each other core.10. A non-transitory computer readable medium having stored thereoninstructions for causing a processing circuitry to execute a process,the process comprising: searching through a plurality of inputmultimedia content elements by comparing a query to at least one tagassigned to each input multimedia content element, wherein at least oneof the at least one tag assigned to each input multimedia contentelement is assigned based on at least one signature generated for theinput multimedia content element, wherein each signature represents aconcept, wherein each concept is a collection of signatures and metadatarepresenting the concept.
 11. A system for determining driving decisionsbased on multimedia content elements, comprising: a processingcircuitry; and a memory connected to the processing circuitry, thememory containing instructions that, when executed by the processingcircuitry, configure the system to: search through a plurality of inputmultimedia content elements by comparing a query to at least one tagassigned to each input multimedia content element, wherein at least oneof the at least one tag assigned to each input multimedia contentelement is assigned based on at least one signature generated for theinput multimedia content element, wherein each signature represents aconcept, wherein each concept is a collection of signatures and metadatarepresenting the concept.
 12. The system of claim 11, wherein the systemis further configured to: assign the at least one tag to at least one ofthe at least one input multimedia content element.
 13. The system ofclaim 12, wherein the system is further configured to: generate at leastone signature for each input multimedia content element; and compare thegenerated at least one signature for each input multimedia contentelement to a plurality of signatures of a plurality of referencemultimedia content elements to determine at least one matching referencemultimedia content element, wherein each reference multimedia contentelement is associated with at least one predetermined tag, wherein theat least one tag assigned to each input multimedia content elementincludes the at least one predetermined tag of each matching referencemultimedia content element.
 14. The system of claim 13, wherein thesignatures of each matching reference multimedia content element matchthe at least one signature generated for the input multimedia contentelement above a predetermined threshold.
 15. The system of claim 12,wherein the system is further configured to: send, to a deep contentclassification system, at least one of: each input multimedia contentelement, and the at least one signature generated for each inputmultimedia content element; receive, from the deep conceptclassification system, at least one concept matching each inputmultimedia content element; and create at least one tag for each inputmultimedia content element, wherein the created at least one tag foreach input multimedia content element includes the metadata representingthe at least one concept matching the input multimedia content element,wherein the created at least one tag is assigned to the respective inputmultimedia content element.
 16. The system of claim 11, wherein thesystem is further configured to: determine, based on the comparison, atleast one search result multimedia content element, wherein each searchresult multimedia content element is one of the at least one inputmultimedia content element having at least one tag matching the queryabove a predetermined threshold.
 17. The system of claim 16, wherein thesystem is further configured to: send the at least one search resultmultimedia content element to a user device.
 18. The system of claim 11,wherein each input multimedia content element is at least one of: animage, graphics, a video stream, a video clip, an audio stream, an audioclip, a video frame, a photograph, images of signals, and a portionthereof.
 19. The system of claim 11, wherein each signature is generatedby a signature generator system, wherein the signature generator systemincludes a plurality of at least partially statistically independentcomputational cores, wherein the properties of each core are setindependently of the properties of each other core.
 20. The system ofclaim 11, further comprising: a signature generator system, wherein eachsignature is generated by the signature generator system, wherein thesignature generator system includes a plurality of at least partiallystatistically independent computational cores, wherein the properties ofeach core are set independently of the properties of each other core.